In Basket Message Volume

Row

Total Message Volume

Physician Message Volume

Row

Key Points

  • Taubman gets the \(2^{nd}\) lowest total volume of portal messages per cFTE.
  • Relative to the clinic with highest message volume, Taubman gets only as many messages.
  • However, Taubman is \(2^{nd}\) only to Northville in physician message volume.
  • See the next tab for the physician touch rate.

Additional Notes

  • Total Message Volume (above left) is based on the number of unique message ids, and should therefore represent messages sent, and not, e.g., count messages with multiple recipients once per recipient.
  • Physician Message Volume (above right) is based on unique message ids with a physician as the (a) recipient.
  • For messages sent by physicians see the Message Sent tab.

Physician Involvement

Row

Physician Touch Rate

“Carbon Copy” Behavior

Row

Additional Notes

  • Physician Touch Rate (above left) summarizes the percentage of message encounters with one or more messages with a physician recipient.
  • “Carbon Copy” Behavior (above right) classifies each message id based on the role(s) of its recipient(s) and summarizes these classifications.
  • Residents are classified as “non-physicians” in the “Carbon Copy” Behavior figure .
  • “Carbon Copy by Sender Role* (right) summarizes the the breakdown among non-physician roles who sent CC’d messages with a physician recipient.

“Carbon Copy” by Sender Role

List of 97
 $ line                      :List of 6
  ..$ colour       : chr "black"
  ..$ linewidth    : num 0.5
  ..$ linetype     : num 1
  ..$ lineend      : chr "butt"
  ..$ arrow        : logi FALSE
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_line" "element"
 $ rect                      :List of 5
  ..$ fill         : chr "white"
  ..$ colour       : chr "black"
  ..$ linewidth    : num 0.5
  ..$ linetype     : num 1
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ text                      :List of 11
  ..$ family       : chr ""
  ..$ face         : chr "plain"
  ..$ colour       : chr "black"
  ..$ size         : num 11
  ..$ hjust        : num 0.5
  ..$ vjust        : num 0.5
  ..$ angle        : num 0
  ..$ lineheight   : num 0.9
  ..$ margin       : 'margin' num [1:4] 0points 0points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : logi FALSE
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ title                     : NULL
 $ aspect.ratio              : NULL
 $ axis.title                : NULL
 $ axis.title.x              :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 1
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 2.75points 0points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.title.x.top          :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 0
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 2.75points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.title.x.bottom       : NULL
 $ axis.title.y              :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 1
  ..$ angle        : num 90
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 2.75points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.title.y.left         : NULL
 $ axis.title.y.right        :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 0
  ..$ angle        : num -90
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 0points 2.75points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.text                 :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : chr "grey30"
  ..$ size         : 'rel' num 0.8
  ..$ hjust        : NULL
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.text.x               :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 1
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 2.2points 0points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.text.x.top           :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : num 0
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 2.2points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.text.x.bottom        : NULL
 $ axis.text.y               :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : num 1
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 2.2points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.text.y.left          : NULL
 $ axis.text.y.right         :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : num 0
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 0points 2.2points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ axis.ticks                :List of 6
  ..$ colour       : chr "grey20"
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ lineend      : NULL
  ..$ arrow        : logi FALSE
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_line" "element"
 $ axis.ticks.x              : NULL
 $ axis.ticks.x.top          : NULL
 $ axis.ticks.x.bottom       : NULL
 $ axis.ticks.y              : NULL
 $ axis.ticks.y.left         : NULL
 $ axis.ticks.y.right        : NULL
 $ axis.ticks.length         : 'simpleUnit' num 2.75points
  ..- attr(*, "unit")= int 8
 $ axis.ticks.length.x       : NULL
 $ axis.ticks.length.x.top   : NULL
 $ axis.ticks.length.x.bottom: NULL
 $ axis.ticks.length.y       : NULL
 $ axis.ticks.length.y.left  : NULL
 $ axis.ticks.length.y.right : NULL
 $ axis.line                 : list()
  ..- attr(*, "class")= chr [1:2] "element_blank" "element"
 $ axis.line.x               : NULL
 $ axis.line.x.top           : NULL
 $ axis.line.x.bottom        : NULL
 $ axis.line.y               : NULL
 $ axis.line.y.left          : NULL
 $ axis.line.y.right         : NULL
 $ legend.background         :List of 5
  ..$ fill         : NULL
  ..$ colour       : logi NA
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ legend.margin             : 'margin' num [1:4] 5.5points 5.5points 5.5points 5.5points
  ..- attr(*, "unit")= int 8
 $ legend.spacing            : 'simpleUnit' num 11points
  ..- attr(*, "unit")= int 8
 $ legend.spacing.x          : NULL
 $ legend.spacing.y          : NULL
 $ legend.key                :List of 5
  ..$ fill         : chr "white"
  ..$ colour       : logi NA
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ legend.key.size           : 'simpleUnit' num 1.2lines
  ..- attr(*, "unit")= int 3
 $ legend.key.height         : NULL
 $ legend.key.width          : NULL
 $ legend.text               :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : 'rel' num 0.8
  ..$ hjust        : NULL
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ legend.text.align         : NULL
 $ legend.title              :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : num 0
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ legend.title.align        : NULL
 $ legend.position           : chr "right"
 $ legend.direction          : NULL
 $ legend.justification      : chr "center"
 $ legend.box                : NULL
 $ legend.box.just           : NULL
 $ legend.box.margin         : 'margin' num [1:4] 0cm 0cm 0cm 0cm
  ..- attr(*, "unit")= int 1
 $ legend.box.background     : list()
  ..- attr(*, "class")= chr [1:2] "element_blank" "element"
 $ legend.box.spacing        : 'simpleUnit' num 11points
  ..- attr(*, "unit")= int 8
 $ panel.background          :List of 5
  ..$ fill         : chr "white"
  ..$ colour       : logi NA
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ panel.border              :List of 5
  ..$ fill         : logi NA
  ..$ colour       : chr "grey20"
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ panel.spacing             : 'simpleUnit' num 5.5points
  ..- attr(*, "unit")= int 8
 $ panel.spacing.x           : NULL
 $ panel.spacing.y           : NULL
 $ panel.grid                :List of 6
  ..$ colour       : chr "grey92"
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ lineend      : NULL
  ..$ arrow        : logi FALSE
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_line" "element"
 $ panel.grid.major          : NULL
 $ panel.grid.minor          :List of 6
  ..$ colour       : NULL
  ..$ linewidth    : 'rel' num 0.5
  ..$ linetype     : NULL
  ..$ lineend      : NULL
  ..$ arrow        : logi FALSE
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_line" "element"
 $ panel.grid.major.x        : NULL
 $ panel.grid.major.y        : NULL
 $ panel.grid.minor.x        : NULL
 $ panel.grid.minor.y        : NULL
 $ panel.ontop               : logi FALSE
 $ plot.background           :List of 5
  ..$ fill         : NULL
  ..$ colour       : chr "white"
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ plot.title                :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : 'rel' num 1.2
  ..$ hjust        : num 0
  ..$ vjust        : num 1
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 5.5points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ plot.title.position       : chr "panel"
 $ plot.subtitle             :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : num 0
  ..$ vjust        : num 1
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 0points 0points 5.5points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ plot.caption              :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : 'rel' num 0.8
  ..$ hjust        : num 1
  ..$ vjust        : num 1
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 5.5points 0points 0points 0points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ plot.caption.position     : chr "panel"
 $ plot.tag                  :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : 'rel' num 1.2
  ..$ hjust        : num 0.5
  ..$ vjust        : num 0.5
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ plot.tag.position         : chr "topleft"
 $ plot.margin               : 'margin' num [1:4] 5.5points 5.5points 5.5points 5.5points
  ..- attr(*, "unit")= int 8
 $ strip.background          :List of 5
  ..$ fill         : chr "grey85"
  ..$ colour       : chr "grey20"
  ..$ linewidth    : NULL
  ..$ linetype     : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_rect" "element"
 $ strip.background.x        : NULL
 $ strip.background.y        : NULL
 $ strip.clip                : chr "inherit"
 $ strip.placement           : chr "inside"
 $ strip.text                :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : chr "grey10"
  ..$ size         : 'rel' num 0.8
  ..$ hjust        : NULL
  ..$ vjust        : NULL
  ..$ angle        : NULL
  ..$ lineheight   : NULL
  ..$ margin       : 'margin' num [1:4] 4.4points 4.4points 4.4points 4.4points
  .. ..- attr(*, "unit")= int 8
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ strip.text.x              : NULL
 $ strip.text.x.bottom       : NULL
 $ strip.text.x.top          : NULL
 $ strip.text.y              :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : NULL
  ..$ angle        : num -90
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ strip.text.y.left         :List of 11
  ..$ family       : NULL
  ..$ face         : NULL
  ..$ colour       : NULL
  ..$ size         : NULL
  ..$ hjust        : NULL
  ..$ vjust        : NULL
  ..$ angle        : num 90
  ..$ lineheight   : NULL
  ..$ margin       : NULL
  ..$ debug        : NULL
  ..$ inherit.blank: logi TRUE
  ..- attr(*, "class")= chr [1:2] "element_text" "element"
 $ strip.text.y.right        : NULL
 $ strip.switch.pad.grid     : 'simpleUnit' num 2.75points
  ..- attr(*, "unit")= int 8
 $ strip.switch.pad.wrap     : 'simpleUnit' num 2.75points
  ..- attr(*, "unit")= int 8
 - attr(*, "class")= chr [1:2] "theme" "gg"
 - attr(*, "complete")= logi TRUE
 - attr(*, "validate")= logi TRUE

Messages Sent

Row

Physician sent message volume

% Encounters with message(s) sent by physician

Row

Key Points.

  • Taubman physicians send the fewest messages per cFTE for both portal and call encounters (above left).
  • Taubman physicians also send 1+ messages on the smallest percent of portal encounters (above right).

Additional Notes

  • None.

Turnaround Time

Row

Median time to first marked “done”

Median time to last marked “done”

                   Clinic     N variable        p    tat      lwr      upr
                   <fctr> <int>   <fctr>    <num> <char>    <num>    <num>
 1:  BHC GENERAL MEDICINE 19288   pct_72 98.20095    min 98.01338 98.38853
 2:           BHC MED PED  9238   pct_72 98.37627    min 98.11854 98.63400
 3: BW03 GENERAL MEDICINE 21337   pct_72 95.72105    min 95.44950 95.99260
 4:  CHC GENERAL MEDICINE 17039   pct_72 96.34368    min 96.06187 96.62549
 5:           CHC MED PED 12356   pct_72 97.90385    min 97.65126 98.15644
 6:  EAA GENERAL MEDICINE 19447   pct_72 96.84270    min 96.59694 97.08846
 7:           EAA MED PED 10579   pct_72 92.89158    min 92.40191 93.38124
 8:  NHC GENERAL MEDICINE 14841   pct_72 95.67415    min 95.34684 96.00145
 9:  SHC GENERAL MEDICINE 12788   pct_72 97.26306    min 96.98028 97.54584
10:    TC GEN MED FACULTY 13887   pct_72 93.69914    min 93.29502 94.10326
11:   TC GEN MED RESIDENT  6479   pct_72 90.70844    min 90.00154 91.41535
12:  WAA GENERAL MEDICINE 22737   pct_72 97.70418    min 97.50951 97.89886
13:  BHC GENERAL MEDICINE 19288   pct_48 96.79594    min 96.54740 97.04447
14:           BHC MED PED  9238   pct_48 97.07729    min 96.73380 97.42078
15: BW03 GENERAL MEDICINE 21337   pct_48 90.34541    min 89.94913 90.74169
16:  CHC GENERAL MEDICINE 17039   pct_48 91.70726    min 91.29319 92.12133
17:           CHC MED PED 12356   pct_48 95.45160    min 95.08421 95.81899
18:  EAA GENERAL MEDICINE 19447   pct_48 89.64365    min 89.21541 90.07188
19:           EAA MED PED 10579   pct_48 82.70158    min 81.98083 83.42233
20:  NHC GENERAL MEDICINE 14841   pct_48 91.41567    min 90.96498 91.86636
21:  SHC GENERAL MEDICINE 12788   pct_48 93.11073    min 92.67176 93.54970
22:    TC GEN MED FACULTY 13887   pct_48 83.99942    min 83.38968 84.60917
23:   TC GEN MED RESIDENT  6479   pct_48 77.60457    min 76.58945 78.61969
24:  WAA GENERAL MEDICINE 22737   pct_48 93.49958    min 93.17913 93.82003
25:  BHC GENERAL MEDICINE 20066   pct_72 47.17432    max 46.48362 47.86503
26:           BHC MED PED  9625   pct_72 57.45455    max 56.46682 58.44227
27: BW03 GENERAL MEDICINE 22274   pct_72 63.65718    max 63.02552 64.28884
28:  CHC GENERAL MEDICINE 17426   pct_72 67.41077    max 66.71486 68.10667
29:           CHC MED PED 12672   pct_72 65.08049    max 64.25048 65.91051
30:  EAA GENERAL MEDICINE 19753   pct_72 63.82322    max 63.15312 64.49331
31:           EAA MED PED 10766   pct_72 57.24503    max 56.31052 58.17954
32:  NHC GENERAL MEDICINE 15239   pct_72 65.53580    max 64.78124 66.29036
33:  SHC GENERAL MEDICINE 13202   pct_72 69.47432    max 68.68877 70.25987
34:    TC GEN MED FACULTY 14231   pct_72 58.07744    max 57.26674 58.88813
35:   TC GEN MED RESIDENT  6637   pct_72 38.45111    max 37.28073 39.62149
36:  WAA GENERAL MEDICINE 23897   pct_72 73.35649    max 72.79597 73.91701
37:  BHC GENERAL MEDICINE 20066   pct_48 36.90322    max 36.23556 37.57088
38:           BHC MED PED  9625   pct_48 46.61818    max 45.62158 47.61478
39: BW03 GENERAL MEDICINE 22274   pct_48 53.42103    max 52.76594 54.07612
40:  CHC GENERAL MEDICINE 17426   pct_48 58.02250    max 57.28975 58.75524
41:           CHC MED PED 12672   pct_48 55.27146    max 54.40576 56.13717
42:  EAA GENERAL MEDICINE 19753   pct_48 53.41467    max 52.71903 54.11031
43:           EAA MED PED 10766   pct_48 45.34646    max 44.40608 46.28684
44:  NHC GENERAL MEDICINE 15239   pct_48 55.34484    max 54.55553 56.13414
45:  SHC GENERAL MEDICINE 13202   pct_48 60.46811    max 59.63411 61.30211
46:    TC GEN MED FACULTY 14231   pct_48 46.44790    max 45.62848 47.26731
47:   TC GEN MED RESIDENT  6637   pct_48 27.94937    max 26.86976 29.02899
48:  WAA GENERAL MEDICINE 23897   pct_48 64.72361    max 64.11778 65.32943
                   Clinic     N variable        p    tat      lwr      upr

Row

% done in 48/72 hours

Notes

  • Based on encounters with first message within the prior year
  • Encounters not yet marked “done” are excluded.
  • A small number (~0.3%) of encounters with negative turn-around times are excluded. These most likely represent cases where the first message in the encounter is outside the scope of the data pull.

Time in In Basket

Row

Time in In Basket

Patient Medical Advice Request

Row

Send Patient Message

Patient Phone Calls

---
title: PARADIGM-Hadeed Preliminary Data
date: "`r format.Date(Sys.Date(), '%B %d, %Y')`"
author: James Henderson, PhD
output:
  flexdashboard::flex_dashboard:
    orientation: rows
    source_code: embed
    vertical layout: scroll
---

```{r setup, include=FALSE}
library(flexdashboard)
library(plotly)
library(tidyverse)
library(data.table)
library(lubridate)

```

```{r, include=FALSE, cache=FALSE}
knitr::read_chunk('updated_1-ibx_prelim.R')
knitr::read_chunk('updated_2-tiime_in_ibx.R')
```
About {.sidebar data-width=300}
============================================================================
 
### Navigation
Use the tabs at the top of the page to select a reporting topic.
Hover over plots for additional detail. 
 
### Notes
#### cFTE data
  - cFTE data is sourced from this [dashboard][1]
     + Only using *physician* cFTE for clinics, APPs are not included.
     + Resident time is not included, but physician cFTE on Taubman GMO is.
  - This is the slowest to update data source, currently limiting us to data 
    through December 2023.
      

#### In Basket Messages Data
  - In Basket message data are sourced from the [UMMG dashboard][2]
  - Taubman messages with "TC GEN MED RESIDENT" as encounter department are
     *not* included except where explicilty referred to.
  - Data from January 2023 - December 2023 are included.
  - Available from January 2023 w/ little effort, longer back with some effort. 
  
  [1]: https://tab.med.umich.edu/#/views/PatientCounts/PanelcFTETrend?:iid=1
  [2]: https://tab.med.umich.edu/#/views/InBasket_16219755160520/Volume?:iid=1

#### Time in In Basket
 - Time in In Basket is sourced from Epic Signal.
 - Currently using January 2023 - December 2023  
 - Available from January 2023 - December 2023. 
   

In Basket Message Volume
============================================================================
 
Row {data-height=900}
----------------------------------------------------------------------------
### Total Message Volume
```{r, test1, echo=FALSE}
```

### Physician Message Volume
```{r, test2, echo=FALSE}
```

 
Row {data-height=450}
----------------------------------------------------------------------------
### Key Points
 + Taubman gets the $2^{nd}$ *lowest* total volume of portal messages per
   cFTE. 
 + Relative to the clinic with highest message volume, 
   Taubman gets only as many messages.  
 + However, Taubman is $2^{nd}$ only to Northville in *physician*
    message volume. 
 + See the [next tab](#physician-involvement) for the physician touch rate. 
 
### Additional Notes
 + Total Message Volume (above left) is based on the number of unique
   message ids, and should therefore represent messages *sent*, and not, 
   e.g., count messages with multiple recipients once per recipient. 
 + Physician Message Volume (above right) is based on unique message ids with
   a physician as the (a) *recipient*. 
 + For messages *sent by physicians* see the [Message Sent](#messages-sent)
   tab.  

 
Physician Involvement
============================================================================

 Row {data-height=900}
----------------------------------------------------------------------------
### Physician Touch Rate
```{r, test3, echo=FALSE}
```

### "Carbon Copy" Behavior
```{r, test4, echo=FALSE}
```

Row {data-height=900}
----------------------------------------------------------------------------
 
### Additional Notes
 + *Physician Touch Rate* (above left) summarizes the percentage of message
   *encounters* with one or more messages with a physician *recipient*. 
 + *"Carbon Copy" Behavior* (above right) classifies each message id based on
   the role(s) of its recipient(s) and summarizes these classifications. 
 + Residents are classified as "non-physicians" in the "Carbon Copy" Behavior
   figure .
 + *"Carbon Copy* by Sender Role* (right) summarizes the the breakdown among
    non-physician roles who sent CC'd messages with a physician recipient.  
   

### "Carbon Copy" by Sender Role
```{r, test5, echo=FALSE}
```

 Messages Sent
============================================================================
 
Row {data-height=900}
----------------------------------------------------------------------------
### Physician **sent** message volume
```{r, test6, echo=FALSE}
```

### % Encounters with message(s) sent by physician
```{r, test7, echo=FALSE}
```

Row 
----------------------------------------------------------------------------
### Key Points. 
 + Taubman physicians **send** the fewest messages per cFTE for both 
   portal and call encounters (above left). 
 + Taubman physicians also send 1+ messages on the smallest percent of
   portal encounters (above right).  
 
### Additional Notes
 + None.   
 

Turnaround Time
============================================================================
 
Row
----------------------------------------------------------------------------
### Median time to first marked "done"
 
```{r, test8, echo=FALSE}
```

### Median time to last marked "done"
```{r, test9, echo=FALSE}
```

Row
----------------------------------------------------------------------------
### % done in 48/72 hours
```{r, test10, echo=FALSE}
```

### Notes
 - Based on encounters with first message within the prior year
 - Encounters not yet marked "done" are excluded.
 - A small number (~0.3%) of encounters with negative turn-around times are
   excluded. These most likely represent cases where the first message in the
   encounter is outside the scope of the data pull. 
   

Time in In Basket
============================================================================
 
Row
----------------------------------------------------------------------------
### Time in In Basket
```{r, test11, echo=FALSE}
```

### Patient Medical Advice Request
```{r, test12, echo=FALSE}
```

Row
----------------------------------------------------------------------------
### Send Patient Message
```{r, test13, echo=FALSE}
```

### Patient Phone Calls
```{r, test14, echo=FALSE}
```